package com.xyh.dao;

import java.io.Serializable;
import java.util.List;


/**
 * 基础dao封装一些简单的方法
 *
 */
public interface BaseDao<T>{
    /**
     * 插入一个实体
     * @param entity 实体
     * @return 影响行数
     */
    int save(T entity) ;

    /**
     * 根据实体主键删除一个实体
     * @param id 实体主键
     * @return 影响行数
     */
    int delete(Serializable id);

    /**
     * 更新
     * @param entity 实体
     * @return 影响行数
     */
    int update(Serializable id, T entity);

    /**
     * 根据id查出对应实体
     * @param id id
     * @return 实体
     */
    T findOne(Serializable id);

    /**
     * 获得表中数据的总数
     * @return 总数
     */
    Integer count();

    /**
     * 获取所有
     * @return 实体集合
     */
    List<T> getAll();
}
